/*
 *  Disc Catalog
 *  A little application to quickly catalog and find contents of your
 *  DVD archives.
 *
 *  Catalog.h
 *  The application model's root class.
 *
 *
 *  Created by Nicola Gigante on 17/12/08.
 *  Copyright (C) 2008  Nicola Gigante
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#import <Cocoa/Cocoa.h>
#import "Disc.h"
#import "LabelManager.h"

@class Disc;

@interface Catalog : NSObject
{
	NSMutableArray *discs;
	NSString *name;
	Disc *lastDisc; // Non-persistent
	
	// Labeling
	LabelManager *labelManager;
	BOOL labelsEnabled;
}

@property (retain) IBOutlet NSMutableArray *discs;
@property (retain) IBOutlet NSString *name;
@property (retain) IBOutlet Disc *lastDisc;

// Labeling options
@property (assign) LabelManager *labelManager;
@property		   BOOL labelsEnabled;


- (id) init;

- (unsigned) countOfDiscs;
- (Disc *) objectInDiscsAtIndex:(unsigned)index;
- (void) removeObjectFromDiscsAtIndex:(int)index;
- (void) insertObject:(Disc *)object inDiscsAtIndex:(int)index;

@end
